package date;

import java.util.Date;

/**
 * Date类表示特定的时刻,单位为亳秒
 * 时间换算公式
 * 1秒=100@亳秒(常用)
 * <p>
 * 时间原点的由来:1970年01月01日
 * 1960年8月，贝尔实验室的程序员使用B语言在老旧的PDP-7机器上开发出了unix的一个版本
 * 随后改进了B语言，开发了C语言，重写JUNTX
 * 所以认为1970年1月1日是C语言的生日，Java延续了这一传统
 * <p>
 * date构造方法:
 * Date();空参构造创建对象，代表当前系统时间
 * Date(long 毫秒值);带参构造创建对象,参数表示从时间原点开始,经过的毫秒值
 * <p>
 * 注意:导包使用util包下的Date
 */
public class DateDemo {
    public static void main(String[] args) {
        // gouzaomethod();

        chengyuanmethod();

    }

    private static void chengyuanmethod() {
        // 成员方法
        // public long getTime()  获取时间对象的毫秒值
        System.out.println(new Date().getTime());        // 相当于时间戳
        System.out.println(System.currentTimeMillis());  // 相当于时间戳

        // public void setTime(long time)  设置时间，传递毫秒值
        Date date = new Date();
        date.setTime(0L);
        System.out.println(date);
    }


    /**
     * 构造方法
     */
    private static void gouzaomethod() {
        // 空参构造Date对象，封装了当前系统时间
        System.out.println(new Date());

        // 带参构造Date对象，从时间原来开始，经过了指定时间的时刻
        System.out.println(new Date(0L)); // 相当于时间原点 -> 我们是东八区，所有要+8小时
        System.out.println(new Date(new Date().getTime()));
    }
}
